package ar.com.digitalbricks.view.imprenta.helper;

import java.util.Collection;
import java.util.HashSet;

import ar.com.digitalbricks.imprenta.persona.Contacto;
import ar.com.digitalbricks.imprenta.persona.MedioComunicacion;

public class ContactoView {
	private String id;
	private String nombre;
	private String seccion;
	private Collection<TelefonoView> telefonos;
	private String mail;
	private String telefonoPrincipal;
	private Collection<CalendarioAtencionItemView> calendario;

	public ContactoView() {}

	public ContactoView(Contacto contacto) {
		this.id = contacto.getId() != null ? contacto.getId().toString() : null;
		this.nombre = contacto.getNombre();
		this.seccion = contacto.getSeccion();
		this.mail = contacto.getMail();
		for (MedioComunicacion medioComunicacion : contacto.getMediosComunicacion()) {
			
			if (medioComunicacion.getIsPrincipal()){
				this.telefonoPrincipal = medioComunicacion.getDescripcion();
			}
		}
	}

	public String getId() {
		return id;
	}
	public void setId(String id) {
		this.id = id;
	}
	public String getNombre() {
		return nombre;
	}
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}
	public String getSeccion() {
		return seccion;
	}
	public void setSeccion(String seccion) {
		this.seccion = seccion;
	}
	public String getMail() {
		return mail;
	}
	public void setMail(String mail) {
		this.mail = mail;
	}
	public String getTelefonoPrincipal() {
		return this.telefonoPrincipal;
	}
	public void setTelefonoPrincipal(String telefonoPrincipal) {
		this.telefonoPrincipal = telefonoPrincipal;
	}
	public Collection<TelefonoView> getTelefonos() {
		if (this.telefonos == null){
			this.telefonos = new HashSet<TelefonoView>();
		}
		return this.telefonos;
	}
	public void setTelefonos(Collection<TelefonoView> telefonos) {
		this.telefonos = telefonos;
	}
	public Collection<CalendarioAtencionItemView> getCalendario() {
		if (this.calendario == null){
			this.calendario = CalendarioAtencionItemView.newSemanaSinAtencion();
		}
		return this.calendario;
	}
	public void setCalendario(Collection<CalendarioAtencionItemView> calendario) {
		this.calendario = calendario;
	}

}